224

M. Polychronaki et al.

Last but not least, Sovrin’s SSI use for IoT [31] is worth mentioning due to the in-

depth analysis and fine-grained design of a decentralized IAM architecture, focusing

on machine-to-machine (M2M) communication. The architecture is designed as such

inordertohandletheprocessorconstraintsofIoTdevices’performance.Thelifecycle

of devices consisted of two phases is presented while, once again, the use of DIDs

and VCs is imperative in order to maintain privacy and control the access of devices

and users to data without providing any piece of their identity content.

3.4

The State of the SSI

The SSI model has been implemented by various platforms, one of the most known

is the Hyperledger Indy framework [32]. Sovrin along with Hyperledger build this

framework which operates on a blockchain network and allows the creation of decen-

tralized identities which are rooted on the blockchain but owned and managed by the

users. Indy can also utilize cryptography libraries to enable Zero Knowledge Proofs

(ZKPs) if the programmer chooses so. Unfortunately, Indy is not specified for use in

IoT environments or devices, so its analysis was out of the scope of this paper. The

wallet for interacting with the network is an application that must be programmed

from zero while the computations which a Hyperledger Indy Node must perform

cannot be supported by low-end devices.

On the other hand, there are several solutions of blockchain designed for IoT

environments but they do not fully implement a truly decentralized identity model,

rather they use gateways for the edge devices which are either communicating with

the blockchain network or constitute a network node. IOTA [33] is a DLT platform

and not blockchain, which is built considering the low computational power of IoT

devices. Indeed, it allows for wallets to be used from low-end devices as well as be

part of a network with the operation of a light node. However, IOTA up until very

recently could not support smart contracts, making it impossible to implement any

customized logic beyond simply inserting data in the ledger. Consequently, there was

no way of implementing an IAM model using this network.

4

Cryptography: The Key to Privacy and Security

Throughout this chapter, the significance of cryptography is strongly pointed out

several times. Truly, the basis of blockchain’s security is the use of cryptographic

methods. Typically, there are two types of cryptography algorithms used in a

blockchain network:

Hashing algorithms for ensuring the property of the ledger’s chain, binding the

blocks with each other, and for building a Merkle tree of all transactions written

in the ledger.